package cn.zjxiliu.lib_login.ui.login;

import cn.zjxiliu.lib_login.R;
import cn.zjxiliu.lib_login.constants.ConfigConstants;
import cn.zjxiliu.lib_login.ui.base.AbsBaseViewHelper;

/**
 * Created by jessie on 2018/11/21.
 */

public class LoginViewHelper extends AbsBaseViewHelper {

    private ILoginView loginView;



    public LoginViewHelper(ILoginView loginView) {
        this.loginView = loginView;
    }

    @Override
    public void initHelper() {
        if(getLoginConfig().isUsePad()){
            loginView.isScreenLandscape(true);
            loginView.initView(R.layout.activity_login_pad);
        }else{
            loginView.isScreenLandscape(false);
            loginView.initView(R.layout.activity_login);
        }

        if(getLoginConfig().getLogo() != 0){
            loginView.changeLogoByResId(getLoginConfig().getLogo());
        }

        if(getLoginConfig().getBackgroundImg() != 0){
            loginView.changeBackgroundImgByResId(getLoginConfig().getBackgroundImg());
        }

        if(getLoginConfig().isShowBackBtn()){
            loginView.showBackBtn(true);
        }else{
            loginView.showBackBtn(false);
        }


        if(getLoginConfig().isHideRegister()){
            loginView.showRegisterBtn(false);
        }else{
            loginView.showRegisterBtn(true);
        }

        if(getLoginConfig().isHideForgetPwd()){
            loginView.showForgetPwdBtn(false);
        }else{
            loginView.showForgetPwdBtn(true);
        }

        if(getLoginConfig().getLoginType().equals(ConfigConstants.LOGIN_TYPER_PHONE_AND_ACCOUNT)){
            loginView.showLoginTypeView(true, true);
            if(getLoginConfig().isPhoneAuthLoginViewFirst()){
                loginView.showPhoneAuthLoginViewFirst();
            }
        }else if(getLoginConfig().getLoginType().equals(ConfigConstants.LOGIN_TYPER_ONLY_ACCOUNT_AND_PWD)){
            loginView.showLoginTypeView(false, true);
        }else if(getLoginConfig().getLoginType().equals(ConfigConstants.LOGIN_TYPER_ONLY_PHONE_AUTH)){
            loginView.showLoginTypeView(true, false);
            loginView.showPhoneAuthLoginViewFirst();
        }
    }

    public void getVerificationCodeWhenPhoneLogin() {
    }

    public void startLoginByPassword() {
    }

    public void startLoginByMobileAndVerificationCode() {
    }
}
